-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use the parking crate instead of threading APIs #27
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Ah, that's why, the MSRV bump. Although it's only a bump of 3 versions, up to a version in the 1.30's. Are we fine with that bump? |
taiki-e
approved these changes
Aug 24, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Merged
notgull
added a commit
that referenced
this pull request
May 4, 2024
Revert "ci: Also add MIRI tests" This reverts commit 2493d3c. Revert "ci: Add CI tests for dependent crates" This reverts commit c56420d. Revert "v5.3.0" This reverts commit db5857b. Revert "feat: Add a loom implementation for event-listener" This reverts commit f402b7e. Revert "docs: Make empty listener panic clearer" This reverts commit 58dbfc8. Revert "v5.2.0" This reverts commit 8f11a87. Revert "feat: Mark StackSlot as Sync" This reverts commit c9d736a. Revert "v5.1.0" This reverts commit 3a49a00. Revert "StackSlot should be send" This reverts commit e5464b4. Revert "v5.0.0" This reverts commit 4c35680. Revert "chore: Polish the implementation of the new API" This reverts commit 6e6202b. Revert "feat: Move Future impl to forwarding macro" This reverts commit 6fc00c0. Revert "ex: Remove unsafe code from mutex example" This reverts commit e0fefc2. Revert "feat: Add stack-based listener" This reverts commit 68be528. Revert "feat: Create Listener trait" This reverts commit d9144a8. Revert "feat: Move EventListener back onto the heap" This reverts commit 86b7780. Revert "chore: Fix up some minor bits before release" This reverts commit ac18bdf. Revert "feat: Add a way to get the current number of listeners" This reverts commit a68f5ee. Revert "Remove RefCell<Option> from PARKER" This reverts commit 5f5135e. Revert "Release 4.0.3" This reverts commit b1d437a. Revert "Relax MSRV to 1.60" This reverts commit aade039. Revert "ci: Use cargo-hack's --rust-version flag for msrv check" This reverts commit 45272f9. Revert "Update criterion requirement from 0.4.0 to 0.5.1 (#62)" This reverts commit 08c7e16. Revert "v4.0.2" This reverts commit 9e986e6. Revert "bugfix: Avoid spinning when waiting for deadline" This reverts commit e0c8290. Revert "v4.0.1" This reverts commit ea0f601. Revert "bugfix: Remove listener if one already exists" This reverts commit c2d1ccb. Revert "Bump MSRV to 1.61 (#102)" This reverts commit cc33cc5. Revert "v4.0.0" This reverts commit 531c106. Revert "breaking: Fix the EventListener::new() footgun" This reverts commit 21b34bf. Revert "v3.1.0" This reverts commit e6ec597. Revert "feat: Implement `UnwindSafe` for `EventListener`" This reverts commit 3f0d516. Revert "Update futures-lite requirement from 1.12.0 to 2.0.0" This reverts commit c42dc40. Revert "v3.0.1" This reverts commit ca65475. Revert "m: Update fmt::Debug to produce new info" This reverts commit 74e8231. Revert "Fix doctest and nitpick" This reverts commit 5c11241. Revert "docs: Document that EventListeners must be listen'd on" This reverts commit ac3978e. Revert "Migrate to Rust 2021 (#85)" This reverts commit ccd2dfe. Revert "tests: Fix MIRI test errors" This reverts commit 10bae60. Revert "v3.0.0" This reverts commit d2ed2cd. Revert "Relax memory ordering in AtomicCell::replace (#83)" This reverts commit 7bbabd0. Revert "Disable IntoNotification::tag with no_std (#81)" This reverts commit 450942e. Revert "Remove extra comma from cfg (#82)" This reverts commit 4965ddd. Revert "Update actions/checkout action to v4" This reverts commit d4c63e9. Revert "Move event-listener-strategy to its own repository" This reverts commit cbbe9aa. Revert "feat: Add explicit web support" This reverts commit c278371. Revert "feat: Implement UnwindSafe on core" This reverts commit 85ca6d3. Revert "bugfix: Tracking down a deadlock in async-channel" This reverts commit e408ccd. Revert "m: Remove tag support from no_std" This reverts commit 564b84b. Revert "bugfix: Fix a couple of bugs in the no_std implementation" This reverts commit 1c95cd2. Revert "bugfix: Use inline assembly in full_fence" This reverts commit 7ce2634. Revert "Update CI config (#72)" This reverts commit 8c55219. Revert "m: Remove most of Pin API related unsafe code" This reverts commit 0ea4641. Revert "docs: Fix typos" This reverts commit a1c3570. Revert "Update minimal version of pin-project-lite to 0.2.12 (#66)" This reverts commit 779b391. Revert "feat: Add an is_listening() method to the event listener" This reverts commit 6b6644a. Revert "Add smol-rs logo (#63)" This reverts commit 7c42a41. Revert "Add a poll_with_strategy method to easy_wrapper! (#60)" This reverts commit 5180532. Revert "Make sure Event/EventListener are Send/Sync (#59)" This reverts commit d6065ed. Revert "Add documentation of new functionality" This reverts commit e2e89d2. Revert "Make the notify() function return notified count" This reverts commit 6345794. Revert "Add support for generic types to easy_wrapper (#54)" This reverts commit fb90f08. Revert "feat: Add an "is_notified" function (#48)" This reverts commit 6d2a097. Revert "Replace boxed closure with a vec of tags" This reverts commit 9275054. Revert "Minimize GITHUB_TOKEN permissions" This reverts commit 97865d1. Revert "Set CARGO_NET_GIT_FETCH_WITH_CLI=true in CI" This reverts commit 43950ee. Revert "Remove the pin-utils dependency (#56)" This reverts commit 0749ab4. Revert "Wire up the Strategy trait with the new tags" This reverts commit a8c3aa7. Revert "Fix doctests" This reverts commit a7e74b2. Revert "Seal the Notification and IntoNotification traits" This reverts commit 15b4ea2. Revert "Fix various CI errors" This reverts commit 723c328. Revert "Add a type parameter T to Event" This reverts commit e001c7a. Revert "Change out SingleNotify for GenericNotify" This reverts commit 266b60d. Revert "Adjust the Notification logic slightly" This reverts commit 5f67dd0. Revert "Add the Notification trait" This reverts commit d986a5c. Revert "Add a portable-atomic feature (#53)" This reverts commit e909945. Revert "Review comments" This reverts commit 72bfe07. Revert "Forgot to adjust length in remove()" This reverts commit 8208309. Revert "Fix code review/CI issues" This reverts commit 17952d6. Revert "Avoid allocation in the benchmarks" This reverts commit bc07d43. Revert "Build tests for no-default-features into C/I" This reverts commit 2ac3be0. Revert "Unsplit the 'Incomplete' commit" This reverts commit 1ec136a. Revert "Fix tests" This reverts commit 3fefa6c. Revert "Add a libstd implementation of the inner list" This reverts commit 20c69a1. Revert "EventListener is now used through pinning" This reverts commit 996ee4d. Revert "Use a cached Parker/Unparker pair when possible" This reverts commit c659cf8. Revert "Replace Listener with Option<sys::Listener>" This reverts commit 09ded13. Revert "Split the EventListener struct into a sub-listener structure" This reverts commit de1f13a. Revert "High-level module reorganization" This reverts commit 0c76968. Revert "Remove the `crossbeam-utils` dependency" This reverts commit 5c83b86. Revert "Remove the `slab` dependency" This reverts commit 1188962. Revert "Move node.rs and queue.rs to be submodules of list.rs" This reverts commit 393566a. Revert "Move the lock method to list.rs and rename it to try_lock" This reverts commit 2d171ae. Revert "Trim unnecessary abstractions" This reverts commit 1a4df18. Revert "Move listener data into list.rs" This reverts commit be047ad. Revert "Move list guard/inner list to list.rs" This reverts commit 0ddf3d6. Revert "Move inner data to lib.rs" This reverts commit 9e32177. Revert "fix(el-strategy): missing feature='std' on Ready impl" This reverts commit 690cae5. Revert "feat: Add the event-listener-strategy crate (#49)" This reverts commit 52cb4bf. Revert "Enable dependabot update for Rust" This reverts commit 673e1fa. Revert "Clean up CI config" This reverts commit 097cbae. Revert "Remove msrv field from .clippy.toml" This reverts commit 7beefeb. Revert "Fix build badge and update links (#45)" This reverts commit 0ea39a6. Revert "Replace the linked list with a safer and less allocation-heavy alternative (#38)" This reverts commit 0235e55. Revert "Bump criterion to 0.4.0 (#35)" This reverts commit 6496571. Revert "Implement an algorithm to make this crate no_std, take 3 (#34)" This reverts commit 16b3d59. Revert "Add basic benchmarks (#31)" This reverts commit 5c1ae63. Revert "Bump rust-version to 1.39 (#29)" This reverts commit c36d7d5. Revert "Use the parking crate instead of threading APIs (#27)" This reverts commit a01518f.
notgull
added a commit
that referenced
this pull request
May 4, 2024
Revert "ci: Also add MIRI tests" This reverts commit 2493d3c. Revert "ci: Add CI tests for dependent crates" This reverts commit c56420d. Revert "v5.3.0" This reverts commit db5857b. Revert "feat: Add a loom implementation for event-listener" This reverts commit f402b7e. Revert "docs: Make empty listener panic clearer" This reverts commit 58dbfc8. Revert "v5.2.0" This reverts commit 8f11a87. Revert "feat: Mark StackSlot as Sync" This reverts commit c9d736a. Revert "v5.1.0" This reverts commit 3a49a00. Revert "StackSlot should be send" This reverts commit e5464b4. Revert "v5.0.0" This reverts commit 4c35680. Revert "chore: Polish the implementation of the new API" This reverts commit 6e6202b. Revert "feat: Move Future impl to forwarding macro" This reverts commit 6fc00c0. Revert "ex: Remove unsafe code from mutex example" This reverts commit e0fefc2. Revert "feat: Add stack-based listener" This reverts commit 68be528. Revert "feat: Create Listener trait" This reverts commit d9144a8. Revert "feat: Move EventListener back onto the heap" This reverts commit 86b7780. Revert "chore: Fix up some minor bits before release" This reverts commit ac18bdf. Revert "feat: Add a way to get the current number of listeners" This reverts commit a68f5ee. Revert "Remove RefCell<Option> from PARKER" This reverts commit 5f5135e. Revert "Release 4.0.3" This reverts commit b1d437a. Revert "Relax MSRV to 1.60" This reverts commit aade039. Revert "ci: Use cargo-hack's --rust-version flag for msrv check" This reverts commit 45272f9. Revert "Update criterion requirement from 0.4.0 to 0.5.1 (#62)" This reverts commit 08c7e16. Revert "v4.0.2" This reverts commit 9e986e6. Revert "bugfix: Avoid spinning when waiting for deadline" This reverts commit e0c8290. Revert "v4.0.1" This reverts commit ea0f601. Revert "bugfix: Remove listener if one already exists" This reverts commit c2d1ccb. Revert "Bump MSRV to 1.61 (#102)" This reverts commit cc33cc5. Revert "v4.0.0" This reverts commit 531c106. Revert "breaking: Fix the EventListener::new() footgun" This reverts commit 21b34bf. Revert "v3.1.0" This reverts commit e6ec597. Revert "feat: Implement `UnwindSafe` for `EventListener`" This reverts commit 3f0d516. Revert "Update futures-lite requirement from 1.12.0 to 2.0.0" This reverts commit c42dc40. Revert "v3.0.1" This reverts commit ca65475. Revert "m: Update fmt::Debug to produce new info" This reverts commit 74e8231. Revert "Fix doctest and nitpick" This reverts commit 5c11241. Revert "docs: Document that EventListeners must be listen'd on" This reverts commit ac3978e. Revert "Migrate to Rust 2021 (#85)" This reverts commit ccd2dfe. Revert "tests: Fix MIRI test errors" This reverts commit 10bae60. Revert "v3.0.0" This reverts commit d2ed2cd. Revert "Relax memory ordering in AtomicCell::replace (#83)" This reverts commit 7bbabd0. Revert "Disable IntoNotification::tag with no_std (#81)" This reverts commit 450942e. Revert "Remove extra comma from cfg (#82)" This reverts commit 4965ddd. Revert "Update actions/checkout action to v4" This reverts commit d4c63e9. Revert "Move event-listener-strategy to its own repository" This reverts commit cbbe9aa. Revert "feat: Add explicit web support" This reverts commit c278371. Revert "feat: Implement UnwindSafe on core" This reverts commit 85ca6d3. Revert "bugfix: Tracking down a deadlock in async-channel" This reverts commit e408ccd. Revert "m: Remove tag support from no_std" This reverts commit 564b84b. Revert "bugfix: Fix a couple of bugs in the no_std implementation" This reverts commit 1c95cd2. Revert "bugfix: Use inline assembly in full_fence" This reverts commit 7ce2634. Revert "Update CI config (#72)" This reverts commit 8c55219. Revert "m: Remove most of Pin API related unsafe code" This reverts commit 0ea4641. Revert "docs: Fix typos" This reverts commit a1c3570. Revert "Update minimal version of pin-project-lite to 0.2.12 (#66)" This reverts commit 779b391. Revert "feat: Add an is_listening() method to the event listener" This reverts commit 6b6644a. Revert "Add smol-rs logo (#63)" This reverts commit 7c42a41. Revert "Add a poll_with_strategy method to easy_wrapper! (#60)" This reverts commit 5180532. Revert "Make sure Event/EventListener are Send/Sync (#59)" This reverts commit d6065ed. Revert "Add documentation of new functionality" This reverts commit e2e89d2. Revert "Make the notify() function return notified count" This reverts commit 6345794. Revert "Add support for generic types to easy_wrapper (#54)" This reverts commit fb90f08. Revert "feat: Add an "is_notified" function (#48)" This reverts commit 6d2a097. Revert "Replace boxed closure with a vec of tags" This reverts commit 9275054. Revert "Minimize GITHUB_TOKEN permissions" This reverts commit 97865d1. Revert "Set CARGO_NET_GIT_FETCH_WITH_CLI=true in CI" This reverts commit 43950ee. Revert "Remove the pin-utils dependency (#56)" This reverts commit 0749ab4. Revert "Wire up the Strategy trait with the new tags" This reverts commit a8c3aa7. Revert "Fix doctests" This reverts commit a7e74b2. Revert "Seal the Notification and IntoNotification traits" This reverts commit 15b4ea2. Revert "Fix various CI errors" This reverts commit 723c328. Revert "Add a type parameter T to Event" This reverts commit e001c7a. Revert "Change out SingleNotify for GenericNotify" This reverts commit 266b60d. Revert "Adjust the Notification logic slightly" This reverts commit 5f67dd0. Revert "Add the Notification trait" This reverts commit d986a5c. Revert "Add a portable-atomic feature (#53)" This reverts commit e909945. Revert "Review comments" This reverts commit 72bfe07. Revert "Forgot to adjust length in remove()" This reverts commit 8208309. Revert "Fix code review/CI issues" This reverts commit 17952d6. Revert "Avoid allocation in the benchmarks" This reverts commit bc07d43. Revert "Build tests for no-default-features into C/I" This reverts commit 2ac3be0. Revert "Unsplit the 'Incomplete' commit" This reverts commit 1ec136a. Revert "Fix tests" This reverts commit 3fefa6c. Revert "Add a libstd implementation of the inner list" This reverts commit 20c69a1. Revert "EventListener is now used through pinning" This reverts commit 996ee4d. Revert "Use a cached Parker/Unparker pair when possible" This reverts commit c659cf8. Revert "Replace Listener with Option<sys::Listener>" This reverts commit 09ded13. Revert "Split the EventListener struct into a sub-listener structure" This reverts commit de1f13a. Revert "High-level module reorganization" This reverts commit 0c76968. Revert "Remove the `crossbeam-utils` dependency" This reverts commit 5c83b86. Revert "Remove the `slab` dependency" This reverts commit 1188962. Revert "Move node.rs and queue.rs to be submodules of list.rs" This reverts commit 393566a. Revert "Move the lock method to list.rs and rename it to try_lock" This reverts commit 2d171ae. Revert "Trim unnecessary abstractions" This reverts commit 1a4df18. Revert "Move listener data into list.rs" This reverts commit be047ad. Revert "Move list guard/inner list to list.rs" This reverts commit 0ddf3d6. Revert "Move inner data to lib.rs" This reverts commit 9e32177. Revert "fix(el-strategy): missing feature='std' on Ready impl" This reverts commit 690cae5. Revert "feat: Add the event-listener-strategy crate (#49)" This reverts commit 52cb4bf. Revert "Enable dependabot update for Rust" This reverts commit 673e1fa. Revert "Clean up CI config" This reverts commit 097cbae. Revert "Remove msrv field from .clippy.toml" This reverts commit 7beefeb. Revert "Fix build badge and update links (#45)" This reverts commit 0ea39a6. Revert "Replace the linked list with a safer and less allocation-heavy alternative (#38)" This reverts commit 0235e55. Revert "Bump criterion to 0.4.0 (#35)" This reverts commit 6496571. Revert "Implement an algorithm to make this crate no_std, take 3 (#34)" This reverts commit 16b3d59. Revert "Add basic benchmarks (#31)" This reverts commit 5c1ae63. Revert "Bump rust-version to 1.39 (#29)" This reverts commit c36d7d5. Revert "Use the parking crate instead of threading APIs (#27)" This reverts commit a01518f.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In order to avoid the downsides of user-invoked
thread::Thread::unpark()
, this PR imports theParking
crate for use in parking/unparking threads.Is there a reason why the original author elected to use
std::thread
instead ofparking
?